package com.jeeplus.test.jlnu.student.domain.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serializable;
import java.util.Date;

@Data
@Accessors(chain = true)
@TableName("jlnu_bsss_student_info")
public class BsssStudentInfo implements Serializable {

    // 定义学位层级常量
    public static final String UNDERGRADUATE = "1";  // 本科生
    public static final String POSTGRADUATE = "2";       // 研究生
    public static final String DOCTORAL = "3";   // 博士生
    public static final String EDUCATION = "4";

    private static final long serialVersionUID = 1L;
    @TableId(type = IdType.AUTO)
    private Integer id;
    private String schoolName;
    private String schoolCode;
    private String department;
    private String academicMajor;
    private String majorCode;
    private String disciplineCategory;
    private String educationLevel;
    private String educationSystem;
    private String grade;
    private String studentId;
    private String name;
    private String formerName;
    private String ethnicity;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    private Date birthDate;
    private String idCardNumber;
    private String gender;
    private Date admissionDate;
    private String trainingMode;
    private String studyForm;
    private String age;
    private String hometown;
    private String birthplace;
    private String politicalAffiliation;
    private String contactNumber;
    private String wechatId;
    private String qqId;
    private String email;
    private String currentAddress;
    private String healthStatus;
    private String height;
    private String specialties;
    private String maritalStatus;
    private String photo;
    private String originLocation;
    private String regionCode;
    private String previousSchoolMajor;
    private String previousEducation;
    private String previousDegree;
    private String admissionCategory;
    private String pursuedDegree;
    private String preAdmissionAchievements;
    private String examPoliticalScore;
    private String examLanguage;
    private String examLanguageScore;
    private String examProfessionalName1;
    private String examProfessionalScore1;
    private String examProfessionalName2;
    private String examProfessionalScore2;
    private String examProfessionalName3;
    private String examProfessionalScore3;
    private String admissionLetterAddress;
    private String addressee;
    private String previousWorkUnitAddress;
    private String postalCode;
    private String familyDetailedAddress;
    private String contactNumber1;
    private String contactNumber2;
    private String flag;

    private String collegeName;  //报考院校
    private String interests;    //兴趣爱好
    private String applySchools; //报考时所在院校
    private String economicSituation; //家庭经济状况及来源
    private String classId; //班号
    private String majorName; //专业名称
    private String officeId; //机构ID
    private Long infoId; //关联学籍ID
    private String studentUrl; //学生照片URL
    private Integer delFlag; //删除标识
    private String password; //密码
    private String signature; //签名
    private String signatureTime; //签名日期


}
